package com.tms.basic.pojo.req;

import lombok.Data;

import java.time.LocalDate;

/**
 * 车辆查询请求参数
 *
 * @author TMS
 * @since 2024-01-01
 */
@Data
public class VehicleQueryReq {

    /**
     * 车牌号 (支持模糊查询)
     */
    private String licensePlate;

    /**
     * 车辆类型ID
     */
    private Long vehicleTypeId;

    /**
     * 车辆品牌
     */
    private String brand;

    /**
     * 车辆状态 (1:可用, 2:运输中, 3:维修中, 4:停用, 5:报废)
     */
    private Integer currentStatus;

    /**
     * 所属机构/公司ID
     */
    private Long organizationId;

    /**
     * GPS设备ID
     */
    private String gpsDeviceId;

    /**
     * 保险到期日期开始
     */
    private LocalDate insuranceDueDateStart;

    /**
     * 保险到期日期结束
     */
    private LocalDate insuranceDueDateEnd;

    /**
     * 年检到期日期开始
     */
    private LocalDate inspectionDueDateStart;

    /**
     * 年检到期日期结束
     */
    private LocalDate inspectionDueDateEnd;

    /**
     * 是否查询即将到期的车辆（保险或年检30天内到期）
     */
    private Boolean queryExpiringSoon;

    /**
     * 创建时间开始
     */
    private LocalDate createdAtStart;

    /**
     * 创建时间结束
     */
    private LocalDate createdAtEnd;

    /**
     * 当前页数，默认第1页
     */
    private Long current = 1L;

    /**
     * 每页显示数量，默认10条
     */
    private Long size = 10L;
} 